Conventional methods for backing up data typically involve creating a backup or snapshot of one or more volumes of a computing system on a predetermined schedule, upon the occurrence of a specified event (such as installation of an operating-system service pack), or when requested by a user. For example, a conventional backup software program may automatically back up a volume of a computing system prior to installing an operating-system patch in order to ensure that a pre-patch restore point exists. This may allow a user to restore the computing system to an earlier state to fix any performance or stability issues caused by the operating-system patch.
Unfortunately, given the rate of change on modern-day computing systems, a user may be unable to remember or determine an event responsible for stability or performance problems experienced by the user. Because conventional backup and restore systems typically only allow users to identify and restore backups of a volume by date or by the event that triggered creation of the backup, a user may be forced to repeatedly restore different backups of a volume in an attempt to identify a stable version of a volume.